package mode.responsibility16;

/**
 * 责任链设计模式
 * https://zhuanlan.zhihu.com/p/609026129
 *
 * https://baijiahao.baidu.com/s?id=1641939890456107004&wfr=spider&for=pc
 *
 *
 * 责任链模式（Chain of Responsibility Pattern）是一种行为型设计模式，
 * 用于将请求从一个处理者传递到另一个处理者，直到请求被处理为止。
 * 在这个模式中，每个处理者都有机会处理请求，
 * 如果当前处理者无法处理请求，
 * 则将其传递给下一个处理者，
 * 直到找到可以处理请求的处理者。
 *
 */
public class ChainOfResponsibilityDemo {

    public static void main(String[] args) {

        String msg = "有紧急事件，请求支援";

        SoliderHandler solider = new SoliderHandler();

        MinisterHandler minister = new MinisterHandler();

        EmperorHandler emperor = new EmperorHandler();


        solider.setSuccessor(minister);

        minister.setSuccessor(emperor);

        solider.handler(msg);

    }


}
